package fejezet20;

import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.util.Vector;
import javax.swing.*;

public class Hivatkozások2 extends JApplet implements ActionListener {

  class Hivatkozás {
    public String rövidítés, url;

    public Hivatkozás(String rövidítés, String url) {
      this.rövidítés=rövidítés;
      this.url=url;
    }
  }

  private Vector<Hivatkozás> hivatkozás=new Vector<Hivatkozás>();
  private JComboBox cbHivatkozás=new JComboBox();
  private JButton btUgrik=new JButton("Ugrik");

  @Override
  public void init() {
    hivatkozás.add(new Hivatkozás("Google", "http://www.google.hu"));
    hivatkozás.add(new Hivatkozás("Yahoo!", "http://www.yahoo.com"));
    hivatkozás.add(new Hivatkozás("MEK", "http://mek.oszk.hu"));
    hivatkozás.add(new Hivatkozás("Friss NetBeans","http://netbeans.org/downloads/index.html"));
    hivatkozás.add(new Hivatkozás("Friss JDK","http://www.oracle.com/technetwork/java/javase/downloads/index.html"));
    setLayout(new FlowLayout());
    add(new JLabel("Hivatkozások:"));
    for(Hivatkozás elem: hivatkozás)
      cbHivatkozás.addItem(elem.rövidítés);
    add(cbHivatkozás);
    cbHivatkozás.addActionListener(this);
    add(btUgrik);
    btUgrik.addActionListener(this);
    getAppletContext().showStatus(hivatkozás.get(0).url);
  }

  @Override
  public void stop() {
    hivatkozás.clear();
  }

  public void actionPerformed(ActionEvent e) {
    if(e.getSource()==cbHivatkozás)
      getAppletContext().showStatus(hivatkozás.get(cbHivatkozás.getSelectedIndex()).url);
    else if(e.getSource()==btUgrik)
      try {
        URL url=new URL(hivatkozás.get(cbHivatkozás.getSelectedIndex()).url);
        getAppletContext().showDocument(url);
      }
      catch(MalformedURLException ex) {
        getAppletContext().showStatus("Hibás URL!");
      }
  }
}